package com.qkm.xinguan.repository;


import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.qkm.xinguan.domain.entity.Notice;
import com.qkm.xinguan.domain.transform.dto.NoticeDTO;
import com.qkm.xinguan.domain.transform.form.NoticeSearchForm;
import com.qkm.xinguan.domain.transform.form.UserSearchForm;
import com.qkm.xinguan.response.Result;
import com.qkm.xinguan.vo.NoticeVo;
import com.qkm.xinguan.vo.UserVo;

/**
 * 公告
 *
 * @author chenshun
 * @email sunlightcs@gmail.com
 * @date 2021-11-22 17:21:40
 */
public interface NoticeRepository extends IService<Notice> {
	/**
	 * 检测用户名是否存在
	 *
	 * @param noticeTip 公告名
	 * @return boolean
	 */
	boolean checkNoticeExist(String noticeTip);
	/**
	 * 分页获取用户列表
	 *
	 * @param page 页数
	 * @param size 条数
	 * @return Page<Notice>
	 */
	Result getNoticeListPage(Integer page, Integer size);
	/**
	 * 条件查询公告列表，并且分页
	 *
	 * @param noticeSearchForm 用户查询框
	 * @param page           页码
	 * @param size           数量
	 * @return Page<UserVO>
	 */
	Page<Notice> searchNoticeListPage(NoticeSearchForm noticeSearchForm, Integer page, Integer size);

	/**
	 * @param id
	 * @param noticeDTO
	 * @return
	 */
	Result update(Long id,NoticeDTO noticeDTO);
}

